www.gusucode.com > 威博多用户网上购物商城(生成html) 6 > 威博多用户网上购物商城(生成html) 6.2/威博多用户/cart/pay.asp

    <%@ LANGUAGE ="VBScript" CodePage="65001"%>
<!--#include file="include.asp"-->
<!--include file=payinterface.asp-->
<%
response.charset="UTF-8"
'dim rs
action=trim(request("action"))
select case action
	case "step1":	
		call step1()
	case "step2":
		call step2()
	case "step3":
		call step3()
	case "step1_1":	
		call step1_1()
	case "step3_3":
		call step3_3()
end select

Sub Step1()
	flag=1
	num=request("num")
	acount=request("acount")
	if request("acount")="" then acount=0
	if session("orderid")="" then session("orderid")=CreateOnlyID()

	if request("acount")="" then
		response.write"<script>alert('请选择收货人地区');history.go(-1)</script>"
		response.end
	end if

	if acount=0 then
		ReceProvince=request("fid")
		Rececity=1
	else	
		ReceProvince=request("addr"&acount&"")
		Rececity=acount
	end if	

	OpenRs
	rem 记录收货人相关信息
	sql="select * from web_orders where UO_orderid='"&session("orderid")&"'"
	rs.open sql,conn,1,3
	if rs.eof then
		rs.addnew
		rs("uo_orderid")=session("orderid")
		rs("uo_cartid")=session("cartid")
		rs("uo_userid")=request.cookies("kkuid")
	end if
		rs("uo_recname")=request("receiver")
		rs("uo_recsex")=request("sex")
		rs("uo_rectel")=request("tel1")&"-"&request("tel2")&"-"&request("tel3")
		rs("uo_recmobile")=request("mobile")
		rs("uo_recemail")=request("email")
		rs("uo_recpost")=request("post")
		rs("uo_recaddr")=trim(request("addr"))
		if acount=0 then
			rs("UO_ReceProvince")=request("fid")
		else	
			rs("UO_ReceProvince")=request("addr"&acount&"")	
		end if	
		rs("UO_ReceCity")=acount
		rs("uo_state")=0
		rs("uo_payflag")=web_trade_flag
		if web_trade_flag=0 then
			rs("uo_recpayway")=request("paymethod")
		end if
	rs.update 
	rs.close

	rem 记录子订单
	sql="select orderid from web_childorders where orderid='"&session("orderid")&"'"
	rs.open sql,conn,1,3
	if rs.eof then flag=0
	for i=1 to num
		shopid=trim(request.form("w_shopid")(i))
		childorderid=session("orderid")&"_"&i
		payment=trim(request("paymethod_"&shopid))
		if isnull(payment) or isnumeric(payment)=false then payment=0
		sendway=trim(request("sendmethod_"&shopid))
		sendfee=trim(request("sendfee_"&shopid))
		areaid=trim(request("area_"&shopid))
		if flag=0 then
			sql="insert into web_childorders(orderid,userid,shopid,c_orderid,c_recpayway,c_recsendway,c_recsendfee,c_areaid) values('"&session("orderid")&"','"&request.cookies("kkuid")&"','"&shopid&"','"&childorderid&"',"&payment&","&sendway&","&sendfee&","&areaid&")"
			'response.write sql
			conn.execute(sql)
		else
			sql="update web_childorders set c_recpayway="&payment&",c_recsendway="&sendway&",c_recsendfee="&sendfee&",c_areaid="&areaid&" where shopid='"&shopid&"' and c_orderid='"&childorderid&"'"
			'response.write sql
			conn.execute(sql)		
		end if 
	next

	if request("rflag")=1 then
		tel=request("tel1")&"|"&request("tel2")&"|"&request("tel3")
		sql="insert into Web_Receiver([R_Receiver],[R_ReceSex],[R_ReceCall],[R_ReceAddr],[R_Recepost],[R_Recephone],[Userid],[R_flag],[r_email],[R_ReceProvince],[R_ReceCity])values('"&trim(request("receiver"))&"','"&request("sex")&"','"&tel&"','"&trim(request("addr"))&"','"&trim(request("post"))&"','"&trim(request("mobile"))&"','"&request.cookies("kkuid")&"','1','"&trim(request("email"))&"','"&ReceProvince&"','"&Rececity&"')" 
		conn.execute(sql)
	end if	

	rem如果第一次注册,则保存收货人信息
	if session("firstreg")=true then
		tel=request("tel1")&"|"&request("tel2")&"|"&request("tel3")
		sql="insert into Web_Receiver([R_Receiver],[R_ReceSex],[R_ReceCall],[R_ReceAddr],[R_Recepost],[R_Recephone],[Userid],[R_flag],[r_email],[R_ReceProvince],[R_ReceCity])values('"&trim(request("receiver"))&"','"&request("sex")&"','"&tel&"','"&trim(request("addr"))&"','"&trim(request("post"))&"','"&trim(request("mobile"))&"','"&request.cookies("kkuid")&"','1','"&trim(request("email"))&"','"&ReceProvince&"','"&Rececity&"')" 
		conn.execute(sql)
	end if 

	closeRs
	'W_OrderFlag=getonevalue("web_webconfig","W_OrderFlag","id=1")
 	'mixmoney=getonevalue("web_webconfig","w_ordermixmoney","id=1")
	'ordercount=getorderycount(session("cartid"))
	'if W_OrderFlag=1 then
	'	if clng(mixmoney)> clng(ordercount) then
	'		response.redirect "cartstep3.asp"
	'	else	
	'		if request.cookies("kkuid")="" then
	'			response.redirect "cartstep3.asp"
	'		else
	'			response.redirect "cartstep2.asp"
	'		end if
	'	end if	
	'else
	'	response.redirect "cartstep3.asp"
	'end if
	response.redirect "cartstep3.asp"
End Sub

Sub Step3()
	num=request("num")
	conndb
	orderid=trim(session("orderid"))
	'将商品写入售出商品表
	sql="insert into web_soldgoods(cartid,userid,shopid,sc_goodid,sc_goodname,sc_marketprice,sc_memberprice,sc_shopcount,sc_other,sc_classid,sc_truegood,SC_changsale,sc_sxid,sc_mallclassid,sc_pid) SELECT c_cartid,c_userid,shopid,c_goodsid,c_goodsname,c_price,c_preprice,c_goodscount,c_other,c_classid,c_truegood,c_changsale,c_sxid,c_mallclassid,c_pid FROM web_cart where c_cartid='"&session("cartid")&"'"
	conn.execute(sql)

	'更新售出商品表中定单号和用户ID
	sql="update web_soldgoods set orderid='"&session("orderid")&"',userid='"&request.cookies("kkuid")&"' where cartid='"&session("cartid")&"'"
	conn.execute(sql)

	'更新子订单相关信息
	for i=1 to num
		shopid=trim(request.form("w_shopid")(i))
		w_marks=trim(request.form("marks_"&shopid))
		w_profee=csng(trim(request.form("profee_"&shopid)))
		if request("fp")=1 then
			w_tax=trim(request.form("tax_"&shopid))
			w_taxfee=csng(w_tax*clng(w_profee))
		else
			w_taxfee=0
		end if
		s_fee=csng(trim(request.form("sendfee_"&shopid)))
		w_total=csng(w_profee+w_taxfee+s_fee)
		w_memo=trim(request.form("memo_"&shopid))
		w_total_2=csng(w_total_2+w_total)
		sql="update web_childorders set c_state=1,c_Firsttotal='"&w_total&"',c_recinvoicefee="&w_taxfee&",c_recmarks="&w_marks&",c_rectotal="&w_total&",c_recproductfee="&w_profee&",c_addinfo='"&w_memo&"',c_addtime='"&now()&"' where shopid='"&shopid&"' and orderid='"&session("orderid")&"'"
		'response.write sql
		conn.execute(sql)
	next

	'记录订单总金额,发票等相关信息
	sql="update web_orders set uo_rectotal='"&w_total_2&"',UO_Recinvoice='"&request("fp")&"',UO_Recinvoicehead='"&trim(request("fphead"))&"',uo_state=1,uo_addtime='"&now()&"' where UO_orderid='"&session("orderid")&"'"
	conn.execute(sql)

	'if request("Benefitcard")<>"0"    then
 	'	bflag=getonevalue("Web_Benefit","BF_Flag","BG_CodeID='"&trim(request("Benefitcard"))&"'")
	'	if bflag="0" then '通用
	'		sql="update Web_Benefit  set bg_usecount=bg_usecount+1  where BG_CodeID='"&trim(request("Benefitcard"))&"'"
	'	
	'		conn.execute(sql)
	'	elseif bflag="1" then  '单用优惠券
	'		sql="update Web_Benefit  set flag=1 where BG_CodeID='"&trim(request("Benefitcard"))&"'"
	'		conn.execute(sql)
	'		
	'	end if
	'		sql="update Web_BenefitHistory  set bh_type=1  where bh_codeid='"&trim(request("Benefitcard"))&"'"
	'		conn.execute(sql)
	'end if
	
	'修改商品表中商品定单数
	set rs=server.createobject("adodb.recordset")
	sql="select sc_goodid,sc_shopcount from web_soldgoods where orderid='"&orderid&"'"
	rs.open sql,conn
	do while not rs.eof
	  	ordernums=rs("sc_shopcount")
	  	sql="update web_product set p_ordernums=p_ordernums+"&ordernums&" where id=" & rs("sc_goodid")
	  	'response.write sql
	  	conn.execute(sql)
	 	rs.movenext
	loop

	'清理购物车
	conn.execute("delete from web_cart where c_cartid='"&session("cartid")&"'")

	'将定单信息发送给客户
	on error resume next
	set rs=server.createobject("adodb.recordset")
	sql="select * from Web_EmailWord where ID=16"
	rs.open sql,conn,1,3
	title=rs("EW_Title")
	content=rs("EW_Content")
	content=replace(content,"{web_name}",Web_C_sitename)
	content=replace(content,"{ordernum}",session("orderid"))
	content=replace(content,"{shopmoney}",trim(request("goodmoney")))
	content=replace(content,"{allmoney}",totalmoney)
	content=replace(content,"{web_url}",Web_C_weburl)
	if request.cookies("kkuid")="" then 
		username=getonevalue("web_orders","UO_Recname","UO_orderid='"&session("orderid")&"'")
		email=getonevalue("web_orders","UO_Recemail","UO_orderid='"&session("orderid")&"'")
		content=replace(content,"{userid}",trim(username))
		content=replace(content,"{tmpuser}","")
		content=replace(content,"{orderpw}","")
	else 
		content=replace(content,"{userid}",request.cookies("kkuid"))
		content=replace(content,"{tmpuser}","")
		content=replace(content,"{orderpw}","")
		email=getonevalue("Web_User","U_UserEmail","U_UserName='"&request.cookies("kkuid")&"'")
	end if 
	call sendmail(title,content,email)

	rs.close : set rs=nothing
	session("cartid")=""
	session("orderid")=""
	closedb
	response.write"<script>window.location.href='vieworder.asp?orderid="&orderid&"';</script>"
End Sub


'积分兑换商品使用
Sub Step1_1()
	OpenRs

	if request("sendmethod")="" then
		response.write"<script>alert('请选择配送方式');history.go(-1)</script>"
		response.end
	end if
	if request("paymethod")="" then
		response.write"<script>alert('请选择支付方式');history.go(-1)</script>"
		response.end
	end if
	
	num=request("num")
	if session("sorderid")="" then
		session("sorderid")=CreateOnlyID()
	end if 
	sql="select * from web_orders where UO_orderid='"&session("sorderid")&"'"
	rs.open sql,conn,1,3
	if rs.eof then
		rs.addnew
		rs("UO_orderid")=session("sorderid")
		rs("uo_userid")=request.cookies("kkuid")
		rs("uo_cartid")=session("cartid")
		rs("UO_Recsendway")=request("sendmethod")
		rs("UO_Recpayway")=request("paymethod")
	end if
	rs("uo_state")=0
	rs.update : rs.close
	if request("acount")="" then
		acount=0
	else
		acount=request("acount")
	end if
	sql="select * from web_orders where UO_orderid='"&session("sorderid")&"'"
	rs.open sql,conn,1,3
		rs("uo_recname")=request("receiver")
		rs("uo_recsex")=request("sex")
		rs("uo_rectel")=request("tel1")&"-"&request("tel2")&"-"&request("tel3")
		rs("uo_recmobile")=request("mobile")
		rs("uo_recemail")=request("email")
		rs("uo_recpost")=request("post")
		rs("uo_recaddr")=trim(request("addr"))
		if acount=0 then
			rs("UO_ReceProvince")=request("fid")
		else	
			rs("UO_ReceProvince")=request("addr"&acount&"")	
		end if	
		'rs("UO_ReceProvince")=split(request("fid"),"|")(0)
		'rs("UO_ReceCity")=split(request("fid"),"|")(0)
	rs.update 
		if acount=0 then
				ReceProvince=request("fid")
				Rececity=1
			else	
				ReceProvince=request("addr"&acount&"")
				Rececity=acount+1	
			end if	
	if request("rflag")=1 then
		tel=request("tel1")&"|"&request("tel2")&"|"&request("tel3")
		sql="insert into Web_Receiver([R_Receiver],[R_ReceSex],[R_ReceCall],[R_ReceAddr],[R_Recepost],[R_Recephone],[Userid],[R_flag],[r_email],[R_ReceProvince],[R_ReceCity])values('"&trim(request("receiver"))&"','"&request("sex")&"','"&tel&"','"&trim(request("addr"))&"','"&trim(request("post"))&"','"&trim(request("mobile"))&"','"&request.cookies("kkuid")&"','1','"&trim(request("email"))&"','"&ReceProvince&"','"&Rececity&"')" 
		conn.execute(sql)
	end if	
	if session("firstreg")=true then
		tel=request("tel1")&"|"&request("tel2")&"|"&request("tel3")
		sql="insert into Web_Receiver([R_Receiver],[R_ReceSex],[R_ReceCall],[R_ReceAddr],[R_Recepost],[R_Recephone],[Userid],[R_flag],[r_email],[R_ReceProvince],[R_ReceCity])values('"&trim(request("receiver"))&"','"&request("sex")&"','"&tel&"','"&trim(request("addr"))&"','"&trim(request("post"))&"','"&trim(request("mobile"))&"','"&request.cookies("kkuid")&"','1','"&trim(request("email"))&"','"&ReceProvince&"','"&Rececity&"')" 
		conn.execute(sql)
	end if 
	closeRs
	W_OrderFlag=getonevalue("web_webconfig","W_OrderFlag","id=1")
 	mixmoney=getonevalue("web_webconfig","w_ordermixmoney","id=1")
	ordercount=getorderycount(session("cartid"))
	if request("flag")="score" then
		response.redirect "cartscorestep3.asp"
	end if 
	if W_OrderFlag=1 then
		if cint(mixmoney)> cint(ordercount) then
			response.redirect "cartstep3.asp"
		else
			response.redirect "cartstep2.asp"
		end if	
	else
		response.redirect "cartstep3.asp"
	end if

End Sub

'积分兑换商品使用
Sub Step3_3()
	conndb
	orderid=session("sorderid")
	sql="insert into web_soldgoods(cartid,userid,shopid,sc_goodid,sc_goodname,sc_marketprice,sc_memberprice,sc_shopcount,sc_other,sc_classid,sc_truegood,SC_changsale,sc_changescore) SELECT c_cartid,c_userid,shopid,c_goodsid,c_goodsname,c_price,c_preprice,c_goodscount,c_other,c_classid,c_truegood,c_changsale,c_changescore FROM web_cart where c_cartid='"&session("scoreid")&"'"
	conn.execute(sql)
	sql="update web_soldgoods set orderid='"&session("sorderid")&"',userid='"&request.cookies("kkuid")&"' where cartid='"&session("scoreid")&"'"
	conn.execute(sql)
	totalmoney=request("tmoney")
	
	sql="update web_orders set uo_changeflag=1,uo_rectotal='"&totalmoney&"',UO_Firsttotal='"&totalmoney&"',UO_Recinvoice='"&request("fp")&"',UO_Recweight='"&request("allweight")&"',UO_Recother='"&trim(request("memo"))&"',UO_Recinvoicehead='"&trim(request("fphead"))&"',UO_Recproductfee='"&request("goodmoney")&"',UO_Recsendfee='"&request("d_money")&"',UO_Recinvoicefee='"&taxmoney&"',uo_state=1,uo_addtime='"&now()&"',UO_Scoremoney="&request("socremoney")&",UO_Score="&request("usesocre")&",UO_Recmarks="&request("allscore")&",UO_Benefitnum='"&request("Benefitcard")&"',UO_Benefitmoney="&request("Benefitmoney")&" where UO_orderid='"&session("sorderid")&"'"
	'response.write sql
	conn.execute(sql)

	'修改商品表中商品定单数
	set rs=server.createobject("adodb.recordset")
	sql="select sc_goodid,sc_shopcount from web_soldgoods where orderid='"&orderid&"'"
	rs.open sql,conn
	do while not rs.eof
	  	ordernums=rs("sc_shopcount")
	  	sql="update web_product set p_ordernums=p_ordernums+"&ordernums&" where id=" & rs("sc_goodid")
	  	'response.write sql
	  	conn.execute(sql)
	 	rs.movenext
	loop
	
	conn.execute("delete from web_cart where c_cartid='"&session("scoreid")&"'")
	'将定单信息发送给客户
	set rs=server.createobject("adodb.recordset")
	sql="select * from Web_EmailWord where ID=3"
	rs.open sql,conn,1,3
	title=rs("EW_Title")
	content=rs("EW_Content")
	content=replace(content,"{webname}",Web_C_sitename)
	content=replace(content,"{ordernum}",session("orderid"))
	content=replace(content,"{shopmoney}",trim(request("goodmoney")))
	content=replace(content,"{allmoney}",totalmoney)
	content=replace(content,"{url}",Web_C_weburl)
	if request.cookies("kkuid")="" then 
		content=replace(content,"{userid}",session("tmpkkuid"))
		content=replace(content,"{tmpuser}","")
		content=replace(content,"{orderpw}","")
	else 
		content=replace(content,"{userid}",request.cookies("kkuid"))
		content=replace(content,"{tmpuser}","")
		content=replace(content,"{orderpw}","")
	end if 
	email=getonevalue("web_orders","UO_Recemail","UO_orderid='"&session("orderid")&"'")
	call sendmail(title,content,email)
	session("scoreid")=""
	session("sorderid")=""
	response.write"<script>window.location.href='scoreorder.asp?orderid="&orderid&"';</script>"

End Sub
%>